package com.freeland.client2009.service;

import java.util.List;

import com.freeland.client2009.dao.ibatis.model.AdState;
import com.freeland.client2009.dao.ibatis.model.ComputerMac;
import com.freeland.client2009.dao.ibatis.model.ComputerPowerInfo;
import com.freeland.client2009.dao.ibatis.model.NetBarInfo;

/**
 * 酒店电脑使用的日志，和 广告使用操作
 * 以及酒店电脑的管理
 * @author zhangsc
 *  create in 2010-12-1
 */
public interface HotelComputerService {
	/**
	 * 删除酒店的mac
	 * @param mac
	 */
	 public Integer deleteHotelMac(ComputerMac mac);
	 /**
	  * 更新酒店的Mac
	  * @param useracct
	  * @param orignMac
	  * @param newMac
	  * @return
	  */
	 public Integer updateHotelMac(String useracct,String orignMac,String newMac);
	 /**
	  * 获取酒店电脑使用的记录
	  * @param pageIndex
	  * @param pageSize
	  * @param userType
	  * @param userId
	  * @param startDate
	  * @param endDate
	  * @param minute：间隔分钟数
	  * @return
	  */
	public List<ComputerPowerInfo>  getComputerUseLogPage(int pageIndex,int pageSize,String userType,String useracct,String username,String startDate,String endDate,int minute);
	
	public Long  getComputerUseLogCount(String userType,String useracct,String username,String startDate,String endDate,int minute);
	
	/**
	 * 获取广告点击记录
	 * @param pageIndex
	 * @param pageSize
	 * @param userType
	 * @param userId
	 * @return
	 */
	public List<AdState>  getAdStatePage(int pageIndex,int pageSize,String userType,String useracct,String username);
	public Long  getAdStateCount(String userType,String useracct,String username);

	/**
	 * 获取酒店电脑的mac记录
	 * @param pageIndex
	 * @param pageSize
	 * @param userType
	 * @param userId
	 * @return
	 */
	public List<ComputerMac>  getComputerMacPage(int pageIndex,int pageSize,String userType,String useracct,String username);
	public Long  getComputerMacCount(String userType,String useracct,String username);
	/**
	 * 获取酒店服务器的信息
	 * @param pageIndex
	 * @param pageSize
	 * @param userType
	 * @param userId
	 * @return
	 */
	public List<NetBarInfo>  getNetBarInfoPage(int pageIndex,int pageSize,String userType,String useracct,String username);
	public Long getNetBarInfoCount(	String userType, String useracct,String username);

	/**
	 * 保存酒店桌面模版页面的推送文件
	 * @param useracct：酒店号
	 * @param name：酒店名称
	 * @param namepy：酒店拼音
	 * @param updateSrvIds：更新节点，1是指的内部节点，3指的电信节点，4，指的是联通节点
	 * @param filePath：文件的路径
	 * @param fileSize：文件的大小
	 */
	public void saveHotelWebFile(String useracct,String name,String namepy,String updateSrvIds,String filePath,String fileSize);
}
